small {
  opacity: .9;
}
.text-muted{
  opacity: .9;
}
.clear{
  display: block;
  overflow: hidden;
}
.center {
  display: flex;
  justify-content: center;
  align-items: center;
}
.y-center{
  display: flex;
  align-items: center;
}
.block{
  display: block;
}
.inline {
  display: inline;
}
.none{
  display: none;
}
.b-white {
  border-color: #ffffff;
}
.w-full {
  width: 100%;
}

.w-auto {
  width: auto;
}

.h-auto {
  height: auto;
}

.h-full {
  height: 100%;
}

.h-v {
  height: 100vh;
}

.h-v-5 {
  height: 50vh;
}


.pull-left {
  float: left;
}

.pull-right {
  float: right;
}

.w-40 {
  width:  40px;
  height: 40px;
  line-height: 40px;
  display: inline-block;
  text-align: center;
}

.text{
  font-size: 1rem;
}
.text-2x{
  font-size: 2rem;
}
.text-3x{
  font-size: 3rem;
}
.text-4x{
  font-size: 4rem;
}

.text-center {
  text-align: center;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.text-danger,
.text-danger-hover a:hover {
  color: #f44455 !important;
}
.text-dark,
.text-dark-hover a:hover {
  color: #2e3e4e !important;
}
.text-info,
.text-info-hover a:hover {
  color: #6887ff !important;
}
.text-success,
.text-success-hover a:hover {
  color: #6cc788 !important;
}
.text-blue,
.text-blue-hover a:hover {
  color: #2196f3 !important; }

.pb-s { padding-bottom: 0.5rem !important;  }
.pb-m { padding-bottom: 1rem !important;  }
.pb-l { padding-bottom: 2rem !important;  }
.pa-s { padding: 0.5rem !important; }
.pa-m { padding: 1rem !important; }
.pa-l { padding: 2rem !important; }

.mr-s { margin-right: 0.5rem !important;  }
.mr-m { margin-right: 1rem !important;  }
.mr-l { margin-right: 2rem !important;  }
.mb-s { margin-bottom: 0.5rem !important;  }
.mb-m { margin-bottom: 1rem !important;  }
.mb-l { margin-bottom: 2rem !important;  }

.img-responsive {
    width: 100%;
    height: auto;
}

.img-circle {
    border-radius: 50%;
}

#root .logo {
  width: 120px;
  height: 31px;
  background: #333;
  border-radius: 6px;
  margin: 16px 28px 16px 0;
  float: left;
  line-height: 31px;
  text-align: center;
  color: #fff;
}

.ant-menu-submenu-horizontal > .ant-menu {
    width: 120px;
    left: -40px;
}

.header.fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10;
}

.ant-layout-sider.fixed {
    position: fixed;
    top: 64px;
    left: 0;
    z-index: 10;
    min-height: 100%;
    height: 100%;
}

.content-max{
  padding: 0 10px 10px 210px;
  transition: padding 0.15s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.content-normal{
  padding: 0 10px 10px 74px;
}

.ant-layout-sider, .ant-layout-sider-trigger {
  transition: all 0.15s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.ant-layout-sider-children {
  height: 100%;
  overflow-y:auto; 
}
.ant-layout-sider-collapsed .ant-layout-sider-children{
  overflow-y:visible;
}

.ant-layout-sider-children::-webkit-scrollbar {
    width: 4px;
    height: 4px;
    background-color: transparent;
}
.ant-layout-sider-children::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 2px rgba(0,0,0,0.3);
    border-radius: 2px;
    background-color: #29065b;
}
.ant-layout-sider-children::-webkit-scrollbar-thumb {
    border-radius: 2px;
    -webkit-box-shadow: inset 0 0 2px rgba(0,0,0,.3);
    background-color: #ccc;
}

.ant-menu-dark .ant-menu-item .ant-badge > a {
    color: rgba(255, 255, 255, 0.67);
}

.ant-menu-dark .ant-menu-item .ant-badge :hover > a, .ant-menu-dark .ant-menu-item-active .ant-badge > a, .ant-menu-dark .ant-menu-submenu-active .ant-badge > a, .ant-menu-dark:not(.ant-menu-inline) .ant-menu-submenu-open .ant-badge > a, .ant-menu-dark .ant-menu-submenu-selected .ant-badge > a, .ant-menu-dark .ant-menu-submenu-title:hover .ant-badge > a {
    color: #fff;
    text-decoration: none;
}